package com.qn.wechat.ifservice.dto;

import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

public class SBPromoteDto implements Serializable {


    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "活动ID", example = "")
    private String id;

    @ApiModelProperty(value = "微信ID", example = "")
    private Integer wid;

    @ApiModelProperty(value = "活动名称", example = "")
    private String prmname;

    @ApiModelProperty(value = "活动赠送礼品名称", example = "")
    private PrmDescDto prmdescModel;

    @ApiModelProperty(value = "活动开始时间", example = "2018-09-27 14:20:06")
    private Date starttime;

    @ApiModelProperty(value = "活动结束时间", example = "2018-09-27 14:20:06")
    private Date endtime;

    @ApiModelProperty(value = "最大赠送礼品数量", example = "500")
    private Integer limitcount;

    @ApiModelProperty(value = "已赠送数量（伪造）", example = "0")
    private Integer basealreadycount;

    @ApiModelProperty(value = "已赠送数量", example = "0")
    private Integer alreadycount;

    @ApiModelProperty(value = "剩余数量，展示的冗余字段", example = "0")
    private Integer leftcount;

    @ApiModelProperty(value = "备注", example = "")
    private String remark;

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getLeftcount() {
        if (this.limitcount != null && this.alreadycount != null && this.basealreadycount != null)
            return this.limitcount - this.alreadycount - this.basealreadycount;
        return 0;
    }

    @ApiModelProperty(value = "任务数量", example = "")
    private Integer targetcount;

    @ApiModelProperty(value = "创建时间", example = "2018-09-27 14:20:06")
    private Date createtime;

    @ApiModelProperty(value = "创建人", example = "")
    private String creator;

    @ApiModelProperty(value = "创建人编码", example = "")
    private String creatorcode;

    @ApiModelProperty(value = "活动商品图地址", example = "")
    private String productimageurl;

    @ApiModelProperty(value = "活动详情地址（目前未使用此字段）", example = "")
    private String productdetailurl;

    @ApiModelProperty(value = "公众号名称，冗余展示字段", example = "")
    private String wName;

    public String getwName() {
        return wName;
    }

    public void setwName(String wName) {
        this.wName = wName;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    /**
     * 设置
     *
     * @param id
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 获取
     *
     * @return Id -
     */
    public String getId() {
        return this.id;
    }

    /**
     * 设置
     *
     * @param wid
     */
    public void setWid(Integer wid) {
        this.wid = wid;
    }

    /**
     * 获取
     *
     * @return WId -
     */
    public Integer getWid() {
        return this.wid;
    }

    /**
     * 设置
     *
     * @param prmname
     */
    public void setPrmname(String prmname) {
        this.prmname = prmname;
    }

    /**
     * 获取
     *
     * @return PrmName -
     */
    public String getPrmname() {
        return this.prmname;
    }

    /**
     * 设置
     *
     * @param prmdesc
     */
    public void setPrmdescModel(PrmDescDto prmdesc) {
        this.prmdescModel = prmdesc;
    }

    /**
     * 获取
     *
     * @return PrmDesc -
     */
    public PrmDescDto getPrmdescModel() {
        return this.prmdescModel;
    }

    /**
     * 设置
     *
     * @param starttime
     */
    public void setStarttime(Date starttime) {
        this.starttime = starttime;
    }

    /**
     * 获取
     *
     * @return StartTime -
     */
    public Date getStarttime() {
        return this.starttime;
    }

    /**
     * 设置
     *
     * @param endtime
     */
    public void setEndtime(Date endtime) {
        this.endtime = endtime;
    }

    /**
     * 获取
     *
     * @return EndTime -
     */
    public Date getEndtime() {
        return this.endtime;
    }

    /**
     * 设置
     *
     * @param limitcount
     */
    public void setLimitcount(Integer limitcount) {
        this.limitcount = limitcount;
    }

    /**
     * 获取
     *
     * @return LimitCount -
     */
    public Integer getLimitcount() {
        return this.limitcount;
    }

    /**
     * 设置基础数量（伪造）
     *
     * @param basealreadycount 基础数量（伪造）
     */
    public void setBasealreadycount(Integer basealreadycount) {
        this.basealreadycount = basealreadycount;
    }

    /**
     * 获取基础数量（伪造）
     *
     * @return BaseAlreadyCount - 基础数量（伪造）
     */
    public Integer getBasealreadycount() {
        return this.basealreadycount;
    }

    /**
     * 设置
     *
     * @param alreadycount
     */
    public void setAlreadycount(Integer alreadycount) {
        this.alreadycount = alreadycount;
    }

    /**
     * 获取
     *
     * @return AlreadyCount -
     */
    public Integer getAlreadycount() {
        return this.alreadycount;
    }

    /**
     * 设置
     *
     * @param targetcount
     */
    public void setTargetcount(Integer targetcount) {
        this.targetcount = targetcount;
    }

    /**
     * 获取
     *
     * @return TargetCount -
     */
    public Integer getTargetcount() {
        return this.targetcount;
    }

    /**
     * 设置
     *
     * @param createtime
     */
    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    /**
     * 获取
     *
     * @return CreateTime -
     */
    public Date getCreatetime() {
        return this.createtime;
    }

    /**
     * 设置
     *
     * @param creator
     */
    public void setCreator(String creator) {
        this.creator = creator;
    }

    /**
     * 获取
     *
     * @return Creator -
     */
    public String getCreator() {
        return this.creator;
    }

    /**
     * 设置
     *
     * @param creatorcode
     */
    public void setCreatorcode(String creatorcode) {
        this.creatorcode = creatorcode;
    }

    /**
     * 获取
     *
     * @return CreatorCode -
     */
    public String getCreatorcode() {
        return this.creatorcode;
    }

    /**
     * 设置
     *
     * @param productimageurl
     */
    public void setProductimageurl(String productimageurl) {
        this.productimageurl = productimageurl;
    }

    /**
     * 获取
     *
     * @return ProductImageUrl -
     */
    public String getProductimageurl() {
        return this.productimageurl;
    }

    /**
     * 设置
     *
     * @param productdetailurl
     */
    public void setProductdetailurl(String productdetailurl) {
        this.productdetailurl = productdetailurl;
    }

    /**
     * 获取
     *
     * @return ProductDetailUrl -
     */
    public String getProductdetailurl() {
        return this.productdetailurl;
    }
}
